759c9b35cd4d74aff7b912324751b334bf598f47,spring-expression/src/main/java/org/springframework/expression/spel/ast/OpAnd.java,OpAnd,getValueInternal,#ExpressionState#,41

Before Change


		boolean rightValue;

		try {
			TypedValue typedValue = getLeftOperand().getValueInternal(state);
			this.assertTypedValueNotNull(typedValue);
			leftValue = (Boolean)state.convertValue(typedValue, TypeDescriptor.valueOf(Boolean.class));
		}
		catch (SpelEvaluationException ee) {
			ee.setPosition(getLeftOperand().getStartPosition());

After Change



	@Override
	public TypedValue getValueInternal(ExpressionState state) throws EvaluationException {
		if (getBooleanValue(state, getLeftOperand()) == false) {
			// no need to evaluate right operand
			return BooleanTypedValue.FALSE;
		}